/***    
request.globalRequest(url,请求方式,obj数据,123,true单,true 多array)url, method, data, power, isUpload, isFiles
1===没登录前的请求头
2===携带请求头token
3===刷新token
***/
import request from '@/util/network_request/request.ts'
const apiParts = {}
//获取网点出库单列表
apiParts.getNetworkMobileOutStoreList = (data) => request.globalRequest({
	url: `/mobile/network/store/getNetworkMobileOutStoreList`,
	method: 'post',
	data,
	power: 2
})
//获取出库单详情
apiParts.getNetworkMobileStoreDetail = (id) => request.globalRequest({
	url: `/mobile/network/store/getNetworkMobileStoreDetail/${id}`,
	method: 'get',
	power: 2
})
// 保存配件出库申请单
apiParts.saveStore = (data) => request.globalRequest({
	url: `/mobile/network/store/save`,
	method: 'post',
	data,
	power: 2
})
//获取商品分类及所有下级分类
apiParts.getGoodsTypes = () => request.globalRequest({
	url: `/mobile/select/getGoodsTypes`,
	method: 'get',
	power: 2
})
//获取工程师个人仓库
apiParts.getEngineerStore = () => request.globalRequest({
	url: `/mobile/network/store/getEngineerStore`,
	method: 'get',
	power: 2
})
//获取商品配件列表
apiParts.getGoodsSpareList = (data) => request.globalRequest({
	url: `/mobile/select/getGoodsSpareList`,
	method: 'post',
	data,
	power: 2
})
//获取配件库存 
apiParts.getSpareStoreStock = (data) => request.globalRequest({
	url: `/mobile/network/store/getSpareStoreStock/${data.storeId}/${data.goodsId}/${data.goodsSpecId}`,
	method: 'get',
	power: 2
})
//获取库存明细
apiParts.getStoreGoodsStockDetailList = (data) => request.globalRequest({
	url: `/mobile/network/store/getStoreGoodsStockDetailList`,
	method: 'post',
	data,
	power: 2
})

/**
 * 获取配件关联的商品分类
 */
apiParts.getSpareContactGoodTypeList = () => request.globalRequest({
	url: '/mobile/select/getSpareRelationType',
	method: 'get',
	power: 2
})

/**
 * 获取商品配件及配件库存列表
 */
apiParts.getGoodSpareAndSpareInventoryList = (data) => request.globalRequest({
	url: '/mobile/select/getGoodsSpareWithStoreStockList',
	method: 'post',
	data,
	power: 2
})

/**
 * 站点端获取商品列表
 * @param data - 请求参数
 * @param data.ascriptionType - 归属类型：1=商用，2-家用
 * @param data.brandId - 品牌ID
 * @param data.coreMaterials - 是否核心物料：false-否，true-是
 * @param data.goodsIdList - 商品，仅导出生效
 * @param data.goodsType - 商品类型：1-成品，2-配件
 * @param data.keyword - 关键词搜索：商品名称/型号/编码/规格名称	
 * @param data.limit - 每页显示数量
 * @param data.page - 当面页码
 * @param data.source - 产品来源：1-系统创建，2-excel导入，3-金蝶ERP，4-第三方接口创建，5-用友
 * @param data.typeId - 商品一级分类ID
 * @param data.typeThreeId - 商品三级分类ID
 * @param data.typeTwoId - 商品二级分类ID
 * @param data.unitId - 商品单位ID
 */
apiParts.getSparePartList = (data) => request.globalRequest({
	url: '/mobile/network/sn/goods/getGoodsList',
	method: 'post',
	data,
	power: 2
})

/**
 * 创建或修改配件申请单
 * @param data - 请求参数
 * @param data.area - 收货地址：区
 * @param data.city - 收货地址：市
 * @param data.code - 申请单编号
 * @param data.contactName - 联系人姓名
 * @param data.contactPhone - 联系人电话
 * @param data.createType - 建单类型：1-经销商建单， 2-总部建单
 * @param data.detailAddress - 详细地址
 * @param data.id - 主健ID, 为空则新增，不为空则更新
 * @param data.materialApplyParamList - 申请物料
 * @param data.networkId - 收货网点id:总部建单时传。经销商建单不传，默认为当前登录网点
 * @param data.orderRemark - 单据备注
 * @param data.province - 收货地址：省
 * @param data.receivingStoreId - 收货仓id
 * @param data.shippingStoreId - 发货仓id
 * @param data.status - 状态：1-保存, 2-保存并提交
 * @param data.town - 收货地址：镇
 * @param data.type - 单据类型: 1-标准销售订单, 2-免费销售订单, 3-免费销售订单(完全赠送)
 */
apiParts.createSparePartApply = (data) => request.globalRequest({
	url: '/mobile/network/spareApplyOrder/save',
	method: 'post',
	data,
	power: 2
})

/**
 * 提交申请时校验库存以及单据类型
 * @param data - 请求参数
 * @param data.materialQty - 物料编码,申请数量
 * @param data.networkId - 收货网点id: 总部操作时传，经销商操作时不传
 */
apiParts.checkStockBeforeSparePartApplySubmit = (data) => request.globalRequest({
	url: '/mobile/network/spareApplyOrder/submitCheckQtyAndType',
	method: 'post',
	data,
	power: 2
})

/**
 * 获取配件申请单列表
 * @param data - 请求参数
 * @param data.code - 申请单编号
 * @param data.limit - 每页显示数量
 * @param data.networkCode - 网点code
 * @param data.networkName - 网点名称
 * @param data.organizeId - 组织Id
 * @param data.page - 当面页码
 * @param data.status - 状态：1-待提交， 2-待审核， 3-审核通过， 4-审核驳回	
 */
apiParts.getSparePartApplyList = (data) => request.globalRequest({
	url: '/mobile/network/spareApplyOrder/getList',
	method: 'post',
	data,
	power: 2
})

/**
 * 获取配件申请单列表
 * @param {string} id - 配件单id
 */
apiParts.getSparePartApplyDetail = (id) => request.globalRequest({
	url: `/mobile/network/spareApplyOrder/getDetailById/${id}`,
	method: 'get',
	power: 2
})

/**
 * 获取配件申请单列表
 * @param id - 配件id
 * @param data - 请求参数
 * @param data.limit - 每页显示数量
 * @param data.page - 当面页码
 */
apiParts.getSparePartBomList = (id, data) => request.globalRequest({
	url: `/mobile/network/sn/goods/getBoomChildListByProductId/${id}`,
	method: 'post',
	power: 2,
	data,
})

export default apiParts